Advanced Mathematical Functions (RANKX, TOPN) গাইড ও নোট

Big Data and Analytics - ড্যাক্স দিয়ে ডেটা মডেলিং (Data Modeling with DAX) - Advanced Calculations with DAX
233

DAX (Data Analysis Expressions) হল একটি শক্তিশালী ভাষা যা Power BI, PowerPivot, এবং SQL Server Analysis Services (SSAS)-এ ব্যবহৃত হয়। Advanced Mathematical Functions ড্যাক্সের মধ্যে অত্যন্ত কার্যকরী, যা ব্যবহার করে আপনি ডেটার উপর ranking, top-n filtering, এবং অন্যান্য গণনা করতে পারেন। এই প্রবন্ধে আমরা RANKX এবং TOPN ফাংশন সম্পর্কে বিস্তারিত আলোচনা করব, যা ranking এবং top-n selection করতে ব্যবহৃত হয়।


১. RANKX ফাংশন

RANKX ফাংশনটি একটি ranking function যা একটি এক্সপ্রেশন বা কলামের মধ্যে values এর র‍্যাঙ্ক নির্ধারণ করতে ব্যবহৃত হয়। এটি ডেটার মধ্যে শ্রেণীবিন্যাস বা ranking তৈরি করতে সহায়ক। সাধারণত এটি aggregation ফাংশনগুলির সাথে ব্যবহৃত হয়, যেমন SUM, AVERAGE, MAX, ইত্যাদি, যাতে একটি কলামের মানের উপর ভিত্তি করে ডেটা র‍্যাঙ্ক করা যায়।

Syntax:

RANKX(<table>, <expression>, [<value>, [<order>, [<ties>]]])
  • : এটি সেই টেবিল বা এক্সপ্রেশন যা র‍্যাঙ্কিং করতে হবে।
  • : এটি র‍্যাঙ্কের জন্য যে এক্সপ্রেশন বা মান ব্যবহার হবে।
  • (ঐচ্ছিক): এটি সেই মান যা র‍্যাঙ্ক করা হবে।
  • (ঐচ্ছিক): ASC (ascending) বা DESC (descending) হিসেবে র‍্যাঙ্কিং নির্ধারণ করা।
  • (ঐচ্ছিক): র‍্যাঙ্কিংয়ের ক্ষেত্রে যদি একাধিক মান একই হয়, তবে Dense বা Skip নির্বাচন করতে পারবেন।

ব্যবহার:

ধরা যাক, আপনার Sales টেবিল রয়েছে এবং আপনি ProductID অনুযায়ী SalesAmount এর র‍্যাঙ্ক বের করতে চান। তাহলে আপনি RANKX ফাংশনটি ব্যবহার করবেন:

Sales Rank = RANKX(
    ALL(Sales[ProductID]),
    SUM(Sales[SalesAmount]),
    ,
    DESC,
    Dense
)

এখানে:

  • ALL(Sales[ProductID]) ফাংশনটি Sales টেবিলের ProductID কলামের ফিল্টার দূর করে।
  • SUM(Sales[SalesAmount]) ফাংশনটি SalesAmount এর যোগফল নির্ধারণ করবে।
  • DESC নির্দেশ করে যে র‍্যাঙ্কিং descending (বেশি থেকে কম) হবে।
  • Dense নিশ্চিত করবে যে সমান মানের জন্য র‍্যাঙ্ক একে অপরের কাছাকাছি থাকবে।

Real-World Use Case:

RANKX ফাংশনটি ব্যবহৃত হতে পারে যখন আপনি ব্যবসায়িক KPI (Key Performance Indicator) এর জন্য র‍্যাঙ্ক তৈরি করতে চান, যেমন sales ranking, employee ranking, বা product ranking


২. TOPN ফাংশন

TOPN ফাংশনটি একটি টেবিল বা কলামের শীর্ষ N মান নির্বাচন করতে ব্যবহৃত হয়। এটি একটি টেবিলের মধ্যে top-n values খুঁজে বের করতে সহায়ক, যা বিশ্লেষণের জন্য কার্যকরী হতে পারে, যেমন সর্বোচ্চ বিক্রিত পণ্য বা সর্বোচ্চ লাভজনক বিক্রয়।

Syntax:

TOPN(<N>, <table>, <order_by_expression>, [<order>])
  • : যে সংখ্যাটি top-N নির্বাচন করবে।
  • : যে টেবিল বা এক্সপ্রেশন থেকে ডেটা নেওয়া হবে।
  • <order_by_expression>: ডেটা সাজানোর জন্য যে এক্সপ্রেশন ব্যবহার করা হবে।
  • (ঐচ্ছিক): ASC (ascending) বা DESC (descending) হিসেবে সাজানো হবে।

ব্যবহার:

ধরা যাক, আপনি Sales টেবিল থেকে শীর্ষ 5 পণ্য নির্বাচন করতে চান, যেগুলি সর্বোচ্চ বিক্রয় পরিমাণ করেছে:

Top 5 Products = 
TOPN(
    5, 
    Sales, 
    Sales[SalesAmount], 
    DESC
)

এটি Sales টেবিলের শীর্ষ 5 পণ্য নির্বাচন করবে, যেখানে SalesAmount সর্বাধিক থাকবে।

Real-World Use Case:

TOPN ফাংশনটি ব্যবহৃত হতে পারে যখন আপনি Power BI রিপোর্টে top N sales products, top N customers বা top N regions দেখতে চান, যেখানে আপনি নির্দিষ্ট শীর্ষ N আইটেমকে বিশ্লেষণ করতে চান।


৩. RANKX এবং TOPN এর মধ্যে পার্থক্য

FunctionRANKXTOPN
Purposeএকটি এক্সপ্রেশন বা কলামের মধ্যে র‍্যাঙ্ক নির্ধারণ করা।একটি টেবিল বা এক্সপ্রেশন থেকে শীর্ষ N মান নির্বাচন করা।
UsageRanking তৈরি করতে ব্যবহৃত হয়।Top-N Selection করতে ব্যবহৃত হয়।
Resultডেটার র‍্যাঙ্ক বা শ্রেণীবিন্যাস।ডেটার শীর্ষ N মান।
Examplesপণ্যের র‍্যাঙ্কিং, বিক্রয়ের র‍্যাঙ্কিং।শীর্ষ 10 পণ্য, শীর্ষ 5 বিক্রয় অঞ্চল।

৪. RANKX এবং TOPN এর Performance Optimization

RANKX এবং TOPN ফাংশনগুলি যখন বৃহৎ ডেটাসেটে ব্যবহৃত হয়, তখন সঠিকভাবে পারফরম্যান্স অপটিমাইজ করা জরুরি। কিছু পারফরম্যান্স টিপস:

  1. Filter Data Before Applying RANKX or TOPN:
    • আপনার filter context ব্যবহার করে RANKX বা TOPN প্রয়োগের আগে ডেটা ফিল্টার করা উচিত, যাতে এটি শুধুমাত্র প্রয়োজনীয় ডেটা নিয়ে কাজ করে।
  2. Minimize Complex Expressions:
    • RANKX এবং TOPN এর মধ্যে কমপ্লেক্স এক্সপ্রেশন ব্যবহার করার পরিবর্তে সরল এক্সপ্রেশন ব্যবহার করুন, কারণ জটিল এক্সপ্রেশন পারফরম্যান্সে প্রভাব ফেলতে পারে।
  3. Avoid Calculating Ranks Repeatedly:
    • যদি আপনি একাধিক পৃষ্ঠা বা র‍্যাঙ্কিং তৈরির জন্য RANKX বা TOPN ব্যবহার করছেন, তবে র‍্যাঙ্কিং ফলাফলগুলি সংরক্ষণ করুন এবং প্রয়োজনে পুনরায় ব্যবহার করুন।
  4. Use Variables:
    • RANKX বা TOPN ফাংশনের মধ্যে variables ব্যবহার করে এক্সপ্রেশনগুলিকে সহজ এবং দ্রুত করতে পারেন, যা পারফরম্যান্স উন্নত করতে সাহায্য করে।

সারাংশ

RANKX এবং TOPN হল DAX-এর শক্তিশালী advanced mathematical functions যা ranking এবং top-n selection করতে ব্যবহৃত হয়। RANKX ফাংশনটি ডেটার মধ্যে র‍্যাঙ্ক নির্ধারণ করতে সহায়ক, এবং TOPN ফাংশনটি শীর্ষ N মান নির্বাচন করতে ব্যবহৃত হয়। এগুলি ব্যবহার করে আপনি ডেটা বিশ্লেষণ এবং কাস্টম ক্যালকুলেশন তৈরি করতে পারেন, যেমন top products, top customers, এবং sales ranking। সঠিকভাবে এই ফাংশনগুলি ব্যবহার করলে আপনি Power BI এবং Excel-এ আরও কার্যকরী এবং দ্রুত বিশ্লেষণ করতে সক্ষম হবেন।

Content added By
Promotion

Are you sure to start over?

Loading...